/**
 * @Author: Your name
 * @Date:   2024-03-16 17:05:53
 * @Last Modified by:   Your name
 * @Last Modified time: 2024-03-19 15:36:57
 */
import 'package:flutter/material.dart';
import 'tab1_content.dart';
import 'tab2_content.dart';
import 'tab3_content.dart';
import 'tab4_content.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
 
  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> with SingleTickerProviderStateMixin {
  late TabController _tabController;
  String _currentTabTitle = 'TabBar Demo'; // 用于保存当前Tab的标题
  
  List<String> tabTitles = [
    '微信',
    '通讯录',
    '发现',
    '我'
  ]; // 定义所有Tab的标题


  @override
  void initState() {
    print('123456');
    super.initState();
    _tabController = TabController(length: tabTitles.length, vsync: this);
    _tabController.addListener(_handleTabSelectionChanged); // 添加监听器
  }

  void _handleTabSelectionChanged() {
    setState(() {
      _currentTabTitle = tabTitles[_tabController.index]; // 更新标题
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: PreferredSize(
        preferredSize: Size.fromHeight(60.0), // 自定义AppBar的高度
        child: AppBar(
          backgroundColor: Colors.blue, // 设置AppBar的背景色
          title: Row(
            mainAxisAlignment: MainAxisAlignment.start,
            children: [
              // Icon(Icons.menu), // 添加一个菜单图标
              SizedBox(width:150), // 添加一些间距
              Text(
                _currentTabTitle,
                style: TextStyle(
                  fontSize: 20,
                  color: Colors.white,
                ),
              ), // 使用当前Tab的标题
            ],
          ),
          actions: <Widget>[
              IconButton(
                  icon: Icon(Icons.add), // 添加一个添加好友图标
                  onPressed: () {
          // 处理添加好友的点击事件
          print('点击了添加好友按钮');
        },
      ),
            IconButton(
              icon: Icon(Icons.search), // 添加一个搜索图标
              onPressed: () {
                // 添加搜索操作
              },
            ),
          ],
        ),
      ),
      body: TabBarView(
        controller: _tabController,
        children: [
          Tab1Content(),
          Tab2Content(),
          Tab3Content(),
          Tab4Content(),
        ],
      ),
      bottomNavigationBar: Material(
        color: Colors.blue,
        child: TabBar(
          controller: _tabController,
          labelColor: Colors.white, // 设置选中Tab的文字颜色
          unselectedLabelColor: Colors.grey, // 设置未选中Tab的文字颜色
          tabs: tabTitles.map((String title) => Tab(text: title)).toList(),
        ),
      ),
    );
  }

  @override
  void dispose() {
    _tabController.removeListener(_handleTabSelectionChanged); // 移除监听器
    _tabController.dispose();
    super.dispose();
  }
}
